

package padraochainofresponsability;


public class Main {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Carga c1 = new Carga(3, "dvds");
        Carga c2 = new Carga(400, "totem");
        Carga c3 = new Carga(3500, "acucar");
        Carga c4 = new Carga(6000, "aço");


        Veiculo moto = new Moto();
        Veiculo carro = new Carro();
        Veiculo kombi = new Kombi();
        Veiculo caminhonete = new Caminhonete();
        Veiculo caminhao = new Caminhao();


        moto.setSuccessor(carro);
        carro.setSuccessor(kombi);
        kombi.setSuccessor(caminhonete);
        caminhonete.setSuccessor(caminhao);

        System.out.println("\n\nTransportando: "+c1.getDescricao());
        moto.processRequest(c1);
        System.out.println("\n\nTransportando: "+c2.getDescricao());
        moto.processRequest(c2);
        System.out.println("\n\nTransportando: "+c3.getDescricao());
        moto.processRequest(c3);
        System.out.println("\n\nTransportando: "+c4.getDescricao());
        moto.processRequest(c4);


    }

}
